﻿/*-----------------------------------------------------------------------------------------------
// Copyright (C) yangrongfeng 
//
// 文件名：         BaseWebController.cs
// 文件功能描述：   系统前端控制器基类
//
// 
// 创建标识：       杨荣峰  2016-04-21
//
// 修改标识：
// 修改描述：
//
// 备注：	
// 				
//-----------------------------------------------------------------------------------------------*/
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using Web.Models;
using HYBY.WebFrameWork.Controllers;
/*命名空间位置说明：
 * 系统命名空间放第一位；
 * 解决方案内部引用放第二位；
 * 解决方案外部，系统内部引用放在第三位；
 * 第三方开源组件放第四位；
 * 第三方商业组件放第五位
 */

namespace Web.Controllers
{
    /// <summary>
    /// 系统前端控制器基类
    /// </summary>
    public abstract partial class BaseWebController : BaseController
    {
        #region 获得路由中的值

        /// <summary>
        /// 获得路由中的值
        /// </summary>
        /// <param name="key">键</param>
        /// <returns></returns>
        protected string GetRouteString(string key)
        {
            return GetRouteString(key, "");
        }

        /// <summary>
        /// 获得路由中的值
        /// </summary>
        /// <param name="key">键</param>
        /// <returns></returns>
        protected int GetRouteInt(string key)
        {
            return GetRouteInt(key, 0);
        }

        /// <summary>
        /// 获得路由中的值
        /// </summary>
        /// <param name="key">键</param>
        /// <param name="defaultValue">默认值</param>
        /// <returns></returns>
        protected string GetRouteString(string key, string defaultValue)
        {
            object value = RouteData.Values[key];
            if (value != null)
                return value.ToString();
            else
                return defaultValue;
        }

        /// <summary>
        /// 获得路由中的值
        /// </summary>
        /// <param name="key">键</param>
        /// <param name="defaultValue">默认值</param>
        /// <returns></returns>
        protected int GetRouteInt(string key, int defaultValue)
        {
            //TODO：使用类型转换帮助类
            return 0;// TypeHelper.ObjectToInt(RouteData.Values[key], defaultValue);
        }

        #endregion

        #region 获得查询字符串中的值

        /// <summary>
        /// 获得查询字符串中的值
        /// </summary>
        /// <param name="key">键</param>
        /// <returns></returns>
        public static int GetQueryInt(string key)
        {
            return GetQueryInt(key, 0);
        }

        /// <summary>
        /// 获得查询字符串中的值
        /// </summary>
        /// <param name="key">键</param>
        /// <param name="defaultValue">默认值</param>
        /// <returns></returns>
        public static int GetQueryInt(string key, int defaultValue)
        {
            //TODO：使用类型转换帮助类
            return 0;// WebHelper.GetQueryInt(key, defaultValue);
        }


        #endregion

        #region 应用程序异常处理



        #endregion


    }
}